/**
 * <strong>Title : Equipment.java<br>
 * </strong> <strong>Package : cn.b.sky.mes.em.model.condition<br>
 * </strong> <strong>Description : </strong>@类注释说明写在此处@<br>
 * <strong>Create on : 2015年11月3日 上午9:40:35<br>
 * </strong>
 * <p>
 * @author dapeng.li<br>
 * @version <strong>v1.0.0</strong><br>
 * <br>
 *          <strong>修改历史:</strong><br>
 *          修改人 | 修改日期 | 修改描述<br>
 *          -------------------------------------------<br>
 * <br>
 * <br>
 */
package cn.b.sky.mes.em.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.springframework.format.annotation.DateTimeFormat;

import cn.b.sky.common.model.ImeCommon;
import org.apache.commons.lang3.StringUtils;

/**
 * <strong>Title : Equipment.java<br></strong>
 * <strong>Package : cn.b.sky.mes.em.model.condition<br></strong>
 * <strong>Description : </strong>设备<br> 
 * <strong>Create on : 2015年11月3日 上午9:40:35<br></strong>
 * <p>
 * @author dapeng.li<br>
 * @version <strong>v1.0.0</strong><br>
 * <br>
 * <strong>修改历史:</strong><br>
 * 修改人 | 修改日期 | 修改描述<br>
 * -------------------------------------------<br>
 * <br>
 * <br>
 */
public class Equipment extends ImeCommon {
  /**
   * 设备编号
   */
  private String equipmentCode;

  /**
   * 类别编号
   */
  private String categoryCode;

  /**
   * 状态编号
   */
  private String statusCode;

  /**
   * 资产编号
   */
  private String assetCode;

  /**
   * 设备描述
   */
  private String equipmentText;

  /**
   * 规格型号
   */
  private String specModel;

  /**
   * 生产厂家
   */
  private String manufacturer;

  /**
   * 使用年限
   */
  private Integer usageYears;

  /**
   * 设备用途
   */
  private String purpose;

  /**
   * 设备位置
   */
  private String location;

  /**
   * 使用部门
   */
  private String useDepartment;

  /**
   * 备注
   */
  private String memo;

  /**
   * 资产值
   */
  private String assetValue;

  /**
   * 资产等级
   */
  private String assetLevel;

  /**
   * 附件数量
   */
  private Integer attachCount;

  /**
   * 购入日期
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date purchaseDate;

  /**
   * 锁定标志
   */
  private Integer lockFlag;

  /**
   * 设备图片
   */
  private String pictureAttachmentCode;
  
  /**
   * 作业单元编号 NVARCHAR(20)
   */
  private String workUnitCode;

  /**
   * 作业单元描述 NVARCHAR(60)
   */
  private String workUnitText;

  private List<EquipmentAttach> equipmentAttachList = new ArrayList<EquipmentAttach>();

  public String getWorkUnitCode() {
    return workUnitCode;
  }

  public void setWorkUnitCode(String workUnitCode) {
    this.workUnitCode = workUnitCode;
  }

  public String getWorkUnitText() {
    return workUnitText;
  }

  public void setWorkUnitText(String workUnitText) {
    this.workUnitText = workUnitText;
  }

  /** 
  * @return equipmentCode
  */
  public String getEquipmentCode() {
    return StringUtils.upperCase(this.equipmentCode);
  }

  /** 
  * @param equipmentCode 要设置的 equipmentCode
  */
  public void setEquipmentCode(String equipmentCode) {
    this.equipmentCode = StringUtils.upperCase(equipmentCode);
  }

  /** 
  * @return categoryCode
  */
  public String getCategoryCode() {
    return categoryCode;
  }

  /** 
  * @param categoryCode 要设置的 categoryCode
  */
  public void setCategoryCode(String categoryCode) {
    this.categoryCode = categoryCode;
  }

  /** 
  * @return statusCode
  */
  public String getStatusCode() {
    return statusCode;
  }

  /** 
  * @param statusCode 要设置的 statusCode
  */
  public void setStatusCode(String statusCode) {
    this.statusCode = statusCode;
  }

  /** 
  * @return assetCode
  */
  public String getAssetCode() {
    return StringUtils.upperCase(this.assetCode);
  }

  /** 
  * @param assetCode 要设置的 assetCode
  */
  public void setAssetCode(String assetCode) {
    this.assetCode = StringUtils.upperCase(assetCode);
  }

  /** 
  * @return equipmentText
  */
  public String getEquipmentText() {
    return equipmentText;
  }

  /** 
  * @param equipmentText 要设置的 equipmentText
  */
  public void setEquipmentText(String equipmentText) {
    this.equipmentText = equipmentText;
  }

  /** 
  * @return specModel
  */
  public String getSpecModel() {
    return specModel;
  }

  /** 
  * @param specModel 要设置的 specModel
  */
  public void setSpecModel(String specModel) {
    this.specModel = specModel;
  }

  /** 
  * @return manufacturer
  */
  public String getManufacturer() {
    return manufacturer;
  }

  /** 
  * @param manufacturer 要设置的 manufacturer
  */
  public void setManufacturer(String manufacturer) {
    this.manufacturer = manufacturer;
  }

  /** 
  * @return purpose
  */
  public String getPurpose() {
    return purpose;
  }

  /** 
  * @param purpose 要设置的 purpose
  */
  public void setPurpose(String purpose) {
    this.purpose = purpose;
  }

  /** 
  * @return location
  */
  public String getLocation() {
    return location;
  }

  /** 
  * @param location 要设置的 location
  */
  public void setLocation(String location) {
    this.location = location;
  }

  /** 
  * @return useDepartment
  */
  public String getUseDepartment() {
    return useDepartment;
  }

  /** 
  * @param useDepartment 要设置的 useDepartment
  */
  public void setUseDepartment(String useDepartment) {
    this.useDepartment = useDepartment;
  }

  /** 
  * @return memo
  */
  public String getMemo() {
    return memo;
  }

  /** 
  * @param memo 要设置的 memo
  */
  public void setMemo(String memo) {
    this.memo = memo;
  }

  /** 
  * @return usageYears
  */
  public Integer getUsageYears() {
    return usageYears;
  }

  /** 
  * @param usageYears 要设置的 usageYears
  */
  public void setUsageYears(Integer usageYears) {
    this.usageYears = usageYears;
  }

  /** 
  * @return purchaseDate
  */
  public Date getPurchaseDate() {
    return purchaseDate;
  }

  /** 
  * @param purchaseDate 要设置的 purchaseDate
  */
  public void setPurchaseDate(Date purchaseDate) {
    this.purchaseDate = purchaseDate;
  }

  /** 
  * @return lockFlag
  */
  public Integer getLockFlag() {
    return lockFlag;
  }

  /** 
  * @param lockFlag 要设置的 lockFlag
  */
  public void setLockFlag(Integer lockFlag) {
    this.lockFlag = lockFlag;
  }

  /** 
  * @return assetValue
  */
  public String getAssetValue() {
    return assetValue;
  }

  /** 
  * @param assetValue 要设置的 assetValue
  */
  public void setAssetValue(String assetValue) {
    this.assetValue = assetValue;
  }

  /** 
  * @return assetLevel
  */
  public String getAssetLevel() {
    return assetLevel;
  }

  /** 
  * @param assetLevel 要设置的 assetLevel
  */
  public void setAssetLevel(String assetLevel) {
    this.assetLevel = assetLevel;
  }

  /** 
  * @return equipmentAttachList
  */
  public List<EquipmentAttach> getEquipmentAttachList() {
    return equipmentAttachList;
  }

  /** 
  * @param equipmentAttachList 要设置的 equipmentAttachList
  */
  public void setEquipmentAttachList(List<EquipmentAttach> equipmentAttachList) {
    this.equipmentAttachList = equipmentAttachList;
  }

  /** 
  * @return attachCount
  */
  public Integer getAttachCount() {
    return attachCount;
  }

  /** 
  * @param attachCount 要设置的 attachCount
  */
  public void setAttachCount(Integer attachCount) {
    this.attachCount = attachCount;
  }

  public String getPictureAttachmentCode() {
    return pictureAttachmentCode;
  }

  public void setPictureAttachmentCode(String pictureAttachmentCode) {
    this.pictureAttachmentCode = pictureAttachmentCode;
  }

}
